Java Technologies উদাহরণ সহ BigDecimal Arithmetic Operations গাইড ও নোট

243

BigDecimal ক্লাসটি Java.math প্যাকেজের অংশ এবং এটি খুব বড় বা অত্যন্ত সঠিক দশমিক সংখ্যা পরিচালনা করার জন্য ব্যবহৃত হয়। BigDecimal ক্লাসটি বিশেষভাবে ফাইনান্স, অর্থনৈতিক গণনা, বা এমন অন্যান্য ক্ষেত্রে ব্যবহৃত হয় যেখানে দশমিকের সঠিকতা গুরুত্বপূর্ণ।

এখানে BigDecimal এর মাধ্যমে গাণিতিক অপারেশন (যেমন যোগফল, বিয়োগফল, গুণফল, ভাগফল) এবং rounding অপারেশনগুলি ব্যবহার করার উদাহরণ দেওয়া হলো।

BigDecimal এর Arithmetic Operations:

  1. Addition (যোগফল)
  2. Subtraction (বিয়োগফল)
  3. Multiplication (গুণফল)
  4. Division (ভাগফল)

1. Addition (যোগফল)

import java.math.BigDecimal;

public class BigDecimalAddition {
    public static void main(String[] args) {
        // Create two BigDecimal objects
        BigDecimal num1 = new BigDecimal("123.45");
        BigDecimal num2 = new BigDecimal("67.89");

        // Add num1 and num2
        BigDecimal sum = num1.add(num2);
        System.out.println("Sum: " + sum);  // Expected output: 191.34
    }
}

Output:

Sum: 191.34

2. Subtraction (বিয়োগফল)

import java.math.BigDecimal;

public class BigDecimalSubtraction {
    public static void main(String[] args) {
        // Create two BigDecimal objects
        BigDecimal num1 = new BigDecimal("123.45");
        BigDecimal num2 = new BigDecimal("67.89");

        // Subtract num2 from num1
        BigDecimal difference = num1.subtract(num2);
        System.out.println("Difference: " + difference);  // Expected output: 55.56
    }
}

Output:

Difference: 55.56

3. Multiplication (গুণফল)

import java.math.BigDecimal;

public class BigDecimalMultiplication {
    public static void main(String[] args) {
        // Create two BigDecimal objects
        BigDecimal num1 = new BigDecimal("12.34");
        BigDecimal num2 = new BigDecimal("3.56");

        // Multiply num1 and num2
        BigDecimal product = num1.multiply(num2);
        System.out.println("Product: " + product);  // Expected output: 43.8624
    }
}

Output:

Product: 43.8624

4. Division (ভাগফল)

Division করার সময় আমরা setScale() মেথড দিয়ে স্কেল এবং RoundingMode নির্ধারণ করি, যাতে ভাগফল সঠিকভাবে রাউন্ড করা যায়।

import java.math.BigDecimal;
import java.math.RoundingMode;

public class BigDecimalDivision {
    public static void main(String[] args) {
        // Create two BigDecimal objects
        BigDecimal num1 = new BigDecimal("10.0");
        BigDecimal num2 = new BigDecimal("3.0");

        // Divide num1 by num2 and set the scale to 2 decimal places with ROUND_HALF_UP
        BigDecimal quotient = num1.divide(num2, 2, RoundingMode.HALF_UP);
        System.out.println("Quotient: " + quotient);  // Expected output: 3.33
    }
}

Output:

Quotient: 3.33

5. Modulo Operation (মডুলাস অপারেশন)

mod() মেথড ব্যবহার করে আমরা দুটি BigDecimal সংখ্যার মডুলাস বের করতে পারি।

import java.math.BigDecimal;

public class BigDecimalModulo {
    public static void main(String[] args) {
        // Create two BigDecimal objects
        BigDecimal num1 = new BigDecimal("10.5");
        BigDecimal num2 = new BigDecimal("3");

        // Find the remainder (modulus) of num1 divided by num2
        BigDecimal remainder = num1.remainder(num2);
        System.out.println("Remainder (Modulo): " + remainder);  // Expected output: 1.5
    }
}

Output:

Remainder (Modulo): 1.5

6. Exponentiation (শক্তি উত্তোলন)

BigDecimal.pow(int exponent) মেথড ব্যবহার করে একটি BigDecimal অবজেক্টের শক্তি উত্তোলন করা যায়।

import java.math.BigDecimal;

public class BigDecimalExponentiation {
    public static void main(String[] args) {
        // Create a BigDecimal object
        BigDecimal num = new BigDecimal("2");

        // Raise num to the power of 3 (2^3)
        BigDecimal result = num.pow(3);
        System.out.println("Exponentiation result (2^3): " + result);  // Expected output: 8
    }
}

Output:

Exponentiation result (2^3): 8

7. Handling Precision and Rounding

BigDecimal একটি arbitrary-precision সংখ্যা ধারণ করে, তবে কিছু গাণিতিক অপারেশন (যেমন ভাগফল) রাউন্ডিং করতে হতে পারে। setScale() এবং RoundingMode ব্যবহার করে আপনি রাউন্ডিং এবং সঠিকতার স্তর নির্ধারণ করতে পারেন।

Example: Rounding with setScale():

import java.math.BigDecimal;
import java.math.RoundingMode;

public class BigDecimalRounding {
    public static void main(String[] args) {
        // Create a BigDecimal object
        BigDecimal num = new BigDecimal("123.456789");

        // Set the scale to 2 decimal places with rounding mode
        BigDecimal roundedNum = num.setScale(2, RoundingMode.HALF_UP);
        System.out.println("Rounded Number: " + roundedNum);  // Expected output: 123.46
    }
}

Output:

Rounded Number: 123.46
  • BigDecimal ব্যবহার করে আপনি বিভিন্ন গাণিতিক অপারেশন যেমন যোগফল, বিয়োগফল, গুণফল, ভাগফল, মডুলাস, শক্তি উত্তোলন ইত্যাদি খুব সহজে এবং সঠিকভাবে করতে পারেন।
  • Rounding এবং Precision বিষয়টি গুরুত্বপূর্ণ, বিশেষ করে আর্থিক গণনায়।
  • BigDecimal ক্লাসটি immutable (অপরিবর্তনীয়) হওয়ায় প্রতিটি অপারেশন একটি নতুন অবজেক্ট তৈরি করে, যা সঠিকতা এবং নিরাপত্তা নিশ্চিত করে।
Content added By
Promotion

Are you sure to start over?

Loading...